const mongoose = require('mongoose');
// 1.链接数据库
mongoose.connect('mongodb://127.0.0.1:27017/book');
// 2.建立连接,监听成功事件
mongoose.connection.on('open', () => {
    console.log('链接数据库成功');
    // 3.定义文档结构
    let bookSchema = mongoose.Schema({
        name: String,
        author: String,
        price: Number
    })
    // 4.创建模型，对应集合
    let BookModel = mongoose.model('books',bookSchema);
    // // 5.添加文档
    // BookModel.create({
    //     name: '活着',
    //     author: '余华',
    //     price: 34
    // },(error, data) => {
    //     if (error) {
    //         console.log('---', error.message);
    //     } else {
    //         console.log(data);
    //     }
    //     // 6.可选，关闭链接
    //     mongoose.connection.close();
    // })
    // 批量插入
    BookModel.insertMany([
        {
            name: '红楼梦',
            author: '曹雪芹',
            price: 26.8
        },
        {
            name: '三国演义',
            author: '罗贯中',
            price: 35.6
        },
        {
            name: '水浒传',
            author: '施耐庵',
            price: 38.8
        }
    ],(error, data) => {
            if (error) {
                console.log('---', error.message);
            } else {
                console.log(data);
            }
            // 6.可选，关闭链接
            mongoose.connection.close();
    })
    // 更新一个
    // BookModel.updateOne({name: "活着"}, {price: 100},(error, data) => {
    // 更新多个
    // BookModel.updateMany({name: "三国演义"}, {price: 200},(error, data) => {
    //查找一个
    // BookModel.findOne({name: "活着"},(error, data) => {
    // BookModel.findOne({id: "62e9ee829d71f511fff14fc9"},(error, data) => {
    // BookModel.findById( "62e9ee829d71f511fff14fc9",(error, data) => {
    // 查找多个
    // BookModel.find({price: {$gt: 50}},(error, data) => {
    // 查询所有
    // BookModel.find((error, data) => {
    // // 删除一个
    // // BookModel.deleteOne({name: '水浒传'}, (error, data) => {
    //     if (error) {
    //         console.log('---', error.message);
    //     } else {
    //         console.log(data);
    //     }
    //     // 6.可选，关闭链接
    //     mongoose.connection.close();
    // })

})

mongoose.connection.on('error', () => {
    console.log('链接数据库失败');
})